package com.mkh.st.admin.api.dto;

import com.mkh.st.common.core.constant.CommonConstants;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.List;

@Data
@ApiModel(value = "公司信息保存对象")
public class CompanySaveDTO implements Serializable {

	@ApiModelProperty(value="")
	private Long companyId;
	/**
	 * 公司名称
	 */
	@ApiModelProperty(value="公司名称")
	@NotBlank(message = "公司名称不能为空!")
	@Size(max =500,message = "公司名称最大长度为500!")
	private String companyName;
	/**
	 * 公司简称
	 */
	@ApiModelProperty(value="公司简称")
	@NotBlank(message = "公司简称不能为空!")
	@Size(max =500,message = "公司简称最大长度为500")
	private String shortName;

	@ApiModelProperty(value="公司编码")
	private String companyCode;

	/**
	 * 国家/地区
	 */
	@ApiModelProperty(value="国家/地区")
	@NotNull(message ="国家/地区不能为空!")
	private Long country;
	/**
	 * 省份
	 */
	@ApiModelProperty(value="省份")

	private List<Long> province;

	/**
	 * 详细地址
	 */
	@ApiModelProperty(value="详细地址")
	private String address;
	/**
	 * 联系人
	 */
	@ApiModelProperty(value="联系人")
	@NotBlank(message = "联系人不能为空!")
	@Size(max = 100,message = "联系人最大长度100")
	private String contacts;
	/**
	 * 联系人手机号码
	 */
	@ApiModelProperty(value="联系人手机号码")
	@NotBlank(message = "联系人手机号码不能为空!")
	@Size(max = 30,message = "联系人手机号码最大长度30")
	private String mobilePhone;
	/**
	 * 税号
	 */
	@ApiModelProperty(value="税号")
	@NotBlank(message = "税号不能为空!")
	@Size(max =30 ,message = "税号最大长度30")
	private String taxNumber;

	@ApiModelProperty(value="开户行")
	@NotBlank(message = "开户行不能为空!")
	@Size(max = 50,message = "开户行最大长度50")
	private String bankName;

	@ApiModelProperty(value="银行账号")
	@NotBlank(message = "银行账号不能为空!")
	@Size(max = 30,message = "银行账号最大长度30")
	private String bankAccount;
	/**
	 * 启用标记 0禁用，1启用
	 */
	@ApiModelProperty(value="启用标记 0禁用，1启用.默认启用")
	private Integer status= CommonConstants.ONE;
	/**
	 * 免税标记:0否1是
	 */
	@ApiModelProperty(value="免税标记:0否1是")
	@NotNull(message = "免税标记不能为空!")
	private Integer dutyFreeFlag;

	@ApiModelProperty(value="数据来源",hidden = true)
	private String resource="SYSTEM";
}
